package com.xyy.saas.payment.merchant.core.dto;

import lombok.Builder;
import lombok.Data;
import java.util.Date;

@Data
@Builder
public class QueryTradeStatusDto {
    /**
     * 可查询（6140/6139）的登记挂账记录，返回的记账标志BookingFlag为1（登记挂账）
     * 可查询（6034/6006/6101的6或9分支）的支付记录，返回的记账标志BookingFlag为2（支付）
     * 可查询（6034/6006/6101的1分支）的下单预支付记录，返回的记账标志BookingFlag为5（下单预支付）
     * 可查询（6034/6006/6101的2分支）的确认收货并付款记录，返回的记账标志BookingFlag为6（确认并付款）
     * 可查询（6034/6006/6101的3分支、6031的2分支）的预支付的退款记录，返回的记账标志BookingFlag为7（退款）
     * 可查询（6163/6165/6166）的记录，返回的记账标志BookingFlag为7（冻结支付）
     * 可查询（6007/6134/6135的7分支和4分支）的记录，返回的记账标志BookingFlag为7（在途充值解冻）
     * 可查询（6034/6006/6101的7分支）的支付到平台记录，返回的记账标志BookingFlag为8（支付到平台）
     * 可查询（6007/6134/6135/6164/6145和见证收单的资金冻结交易）的其他记录，返回的记账标志BookingFlag为N（其他）
     */
    public static final String TRANSFER = "2";
    /**
     * 可查询（6033/6085/6111）的提现记录，返回的记账标志BookingFlag为3（提现）
     */
    public static final String WITHDRAW = "3";
    /**
     * 可查询（6129/6216/见证收单的充值）的充值记录，返回的记账标志BookingFlag为4（清分）
     */
    public static final String RECHARGE = "4";

    /**
     * 业务线
     */
    private String businessIdType;
    /**
     * 支付平台商户标识
     */
    private String accountId;
    /**
     * 交易类型
     * 2 会员间交易
     * 3 提现
     * 4 充值
     */
    private String tradeType;
    /**
     * 提现，充值或会员交易请求时的CnsmrSeqNo值,6216分账时请求时的SubOrderBussSeqNo（如果6216没有送，就用返回的前置流水号FrontSeqNo）
     */
    private String tradeNo;
    /**
     * 交易日期
     */
    private Date tradeDate;
}
